home *** CD-ROM | disk | FTP | other *** search
/ Amiga Games Extra 1996 September / Amiga Games Extra CD-ROM 9-1996.iso / userbox / publicdomain / vim-4.2 / src / msdos.h < prev    next >
C/C++ Source or Header  |  1996-06-09  |  3KB  |  134 lines

  1. /* vi:set ts=4 sw=4:
  2.  *
  3.  * VIM - Vi IMproved        by Bram Moolenaar
  4.  *
  5.  * Do ":help uganda"  in Vim to read copying and usage conditions.
  6.  * Do ":help credits" in Vim to see a list of people who contributed.
  7.  */
  8.  
  9. /*
  10.  * MSDOS Machine-dependent things.
  11.  */
  12.  
  13. #define CASE_INSENSITIVE_FILENAME    /* ignore case when comparing file names */
  14. #define SPACE_IN_FILENAME
  15. #define BACKSLASH_IN_FILENAME
  16. #define BINARY_FILE_IO
  17. #define USE_CRNL                /* lines end in CR-NL instead of NL */
  18. #define USE_VIM_REMOVE
  19. #define USE_VIM_CHDIR
  20. #define USE_MOUSE                /* include mouse support */
  21. #define SYNC_DUP_CLOSE            /* sync() a file with dup() and close() */
  22. #ifdef DJGPP
  23. # define USE_LONG_FNAME _use_lfn()    /* decide at run time */
  24. # define USE_FNAME_CASE
  25. #else
  26. # define SHORT_FNAME                /* always 8.3 filename */
  27. #endif
  28. #define HAVE_STDLIB_H
  29. #define HAVE_STRING_H
  30. #define HAVE_FCNTL_H
  31. #define HAVE_STRCSPN
  32. #define HAVE_MEMSET
  33. #define HAVE_QSORT
  34. #if defined(__DATE__) && defined(__TIME__)
  35. # define HAVE_DATE_TIME
  36. #endif
  37. #define BREAKCHECK_SKIP        1        /* call mch_breakcheck() each time, it's
  38.                                        quite fast */
  39.  
  40. #ifdef DJGPP
  41. # define SIZEOF_INT    4                /* 32 bit ints */
  42. #else
  43. # define SIZEOF_INT 2                /* 16 bit ints */
  44. #endif
  45.  
  46. #include <dos.h>
  47. #include <dir.h>
  48. #include <time.h>
  49.  
  50. #ifdef DJGPP
  51. # include <unistd.h>
  52. #endif
  53.  
  54. /*
  55.  * Names for the EXRC, HELP and temporary files.
  56.  * Some of these may have been defined in the makefile.
  57.  */
  58.  
  59. #ifndef USR_VIMRC_FILE
  60. # define USR_VIMRC_FILE    "$VIM\\_vimrc"
  61. #endif
  62.  
  63. #ifndef USR_EXRC_FILE
  64. # define USR_EXRC_FILE    "$VIM\\_exrc"
  65. #endif
  66.  
  67. #ifndef VIMRC_FILE
  68. # define VIMRC_FILE        "_vimrc"
  69. #endif
  70.  
  71. #ifndef EXRC_FILE
  72. # define EXRC_FILE        "_exrc"
  73. #endif
  74.  
  75. #ifndef VIM_HLP
  76. # define VIM_HLP        "$VIM\\vim_help.txt"
  77. #endif
  78.  
  79. #ifdef VIMINFO
  80. # ifndef VIMINFO_FILE
  81. #  define VIMINFO_FILE    "$VIM\\viminfo"
  82. # endif
  83. #endif /* VIMINFO */
  84.  
  85. #ifndef DEF_BDIR
  86. # define DEF_BDIR        ".,c:\\tmp,c:\\temp"    /* default for 'backupdir' */
  87. #endif
  88.  
  89. #ifndef DEF_DIR
  90. # define DEF_DIR        ".,c:\\tmp,c:\\temp"    /* default for 'directory' */
  91. #endif
  92.  
  93. #define TMPNAME1        "viXXXXXX"        /* put it in current dir */
  94. #define TMPNAME2        "voXXXXXX"        /*  is there a better place? */
  95. #define TMPNAMELEN        10
  96.  
  97. #ifndef MAXMEM
  98. # define MAXMEM            256                /* use up to 256Kbyte for buffer */
  99. #endif
  100. #ifndef MAXMEMTOT
  101. # define MAXMEMTOT        0                /* decide in set_init */
  102. #endif
  103.  
  104. #ifdef DJGPP
  105. # define BASENAMELEN  (_use_lfn()?250:8)    /* length of base of file name */
  106. #else
  107. # define BASENAMELEN        8                /* length of base of file name */
  108. #endif
  109.  
  110. /* codes for msdos mouse event */
  111. #define MOUSE_LEFT        0x01
  112. #define MOUSE_RIGHT        0x02
  113. #define MOUSE_MIDDLE    0x04
  114. #define MOUSE_RELEASE    0x07
  115.  
  116. #define MOUSE_SHIFT        0x08
  117. #define MOUSE_ALT        0x10
  118. #define MOUSE_CTRL        0x20
  119.  
  120. #define MOUSE_DRAG        (0x40 | MOUSE_RELEASE)
  121.  
  122. #define MOUSE_CLICK_MASK    0x07
  123.  
  124. #define NUM_MOUSE_CLICKS(code) \
  125.     ((((code) & 0xff) >> 6) + 1)
  126.  
  127. #define SET_NUM_MOUSE_CLICKS(code, num) \
  128.     (code) = ((code) & 0x3f) + (((num) - 1) << 6)
  129.  
  130. #ifdef DJGPP
  131. /* Work around a bug in Windows 95's rename() */
  132. #define rename(old, new)  djgpp_rename(old, new)
  133. #endif
  134.